Heating devices

ABSTRACT

A heating device includes a heating unit and device electronics. The heating unit is configured to deliver heat to a user&#39;s body. The heating unit includes a substrate and a heating element supported by the substrate. The device electronics are coupled to the heating element and are configured to store a first heating profile that includes data indicating how power should be delivered to the heating element over a first period of time. The device electronics are configured to deliver power to the heating element according to the first heating profile. The device electronics are configured to wirelessly receive a second heating profile from an external computing device. The second heating profile includes data indicating how power should be delivered to the heating element over a second period of time. The device electronics are configured to deliver power to the heating element according to the second heating profile.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.15/863,296, filed on Jan. 5, 2018, which claims the benefit of U.S.Provisional Application No. 62/443,041, filed on Jan. 6, 2017. Thedisclosure of each of the above applications is incorporated herein byreference in their entirety.

FIELD

The present disclosure relates to heating devices that provide heat to auser's body.

BACKGROUND

Heating therapy can be used to provide relief/rehabilitation for avariety of ailments, such as muscle ailments (e.g., soreness, tightness,or spasms), joint ailments (e.g., stiffness or arthritis), or othertissue ailments (e.g., tissue injuries). Heating therapy can be appliedin a variety of manners, such as via direct contact with the skin (e.g.,a hot cloth, pad, or hot water bath) or via infrared radiation. Heattherapy may increase tissue temperature, which may produce vasodilationthat causes increased blood flow to affected areas, thereby increasingthe supply of oxygen and nutrients to the affected areas. Thetherapeutic effects of heat may include a reduction in pain, stiffness,and inflammation in the affected areas.

SUMMARY

In one example, the present disclosure is directed to a heating devicecomprising a heating unit and device electronics. The heating unit isconfigured to deliver heat to a user's body. The heating unit comprisesa substrate and a heating element supported by the substrate. The deviceelectronics are coupled to the heating element. The device electronicsare configured to store a first heating profile that includes dataindicating how power should be delivered to the heating element over afirst period of time. The device electronics are configured to deliverpower to the heating element according to the first heating profile. Thedevice electronics are configured to wirelessly receive a second heatingprofile from an external computing device. The second heating profileincludes data indicating how power should be delivered to the heatingelement over a second period of time. The device electronics areconfigured to deliver power to the heating element according to thesecond heating profile.

In another example, the present disclosure is directed to a heatingdevice comprising a first heating element, a second heating element, anddevice electronics. The first heating element is configured to deliverheat to a first portion of a user's body. The second heating element isconfigured to deliver heat to a second portion of the user's body. Thedevice electronics are coupled to the first and second heating elementsand configured to wirelessly communicate with an external computingdevice. The device electronics are configured to wirelessly receive afirst user-input instruction from the external computing device, thefirst user-input instruction indicating a first amount of power todeliver to each of the first and second heating elements. The deviceelectronics are configured to deliver power to the first and secondheating elements based on the first user-input instruction. The deviceelectronics are configured to wirelessly receive a second user-inputinstruction from the external computing device, the second user-inputinstruction indicating a second amount of power to deliver to the firstheating element. The device electronics are configured to modify thedelivery of power to the first heating element based on the seconduser-input instruction.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure will become more fully understood from thedetailed description and the accompanying drawings.

FIGS. 1A-1C illustrate a first example heating device.

FIGS. 2A-2F illustrate example heating units.

FIGS. 3A-3D illustrate example heating units connected to heating deviceelectronics.

FIG. 4 is a functional block diagram of an example heating device.

FIGS. 5A-5E are example current versus time graphs for a heating device.

FIGS. 6A-6C are flow diagrams that illustrate different modes of heatingdevice operation.

FIGS. 7A-7C are directed to techniques for immediately heating a user.

FIG. 8 illustrates communication between a plurality of heating devicesand a remote server.

FIGS. 9A-9K illustrate example graphical user interfaces (GUIs) on auser device in communication with a heating device.

FIGS. 10A-15 illustrate additional example heating devices.

FIGS. 16A-16E illustrate example sleeves and garments that hold heatingdevices.

In the drawings, reference numbers may be reused to identify similarand/or identical elements.

DETAILED DESCRIPTION

A heating device of the present disclosure (e.g., FIG. 1A) may be usedto provide relief for a variety of different conditions including, butnot limited to, muscle soreness, headaches, joint pain, and arthritis.The heating device may also be used to provide relief for pelvic painconditions, such as chronic pelvic pain, dyspareunia, vulvodynia,endometriosis, and dysmenorrhea (menstrual pain). A variety of exampleheating devices 100-1, 100-2, . . . , 100-6 are illustrated anddescribed herein (e.g., FIGS. 1A-1C and FIGS. 10A-15 ). A heating device100 may generally refer to any of the example heating devices.

A heating device 100 (e.g., a heating pad) includes one or more heatingunits (e.g., heating unit 202-1 of FIG. 2B) that can generate heat forapplication to one or more areas of a user's body. The heating device100 can include a device package (e.g., encapsulation 1006 of FIG. 10B)that houses the one or more heating units. A user can control theheating device manually. For example, the heating device 100 may includeuser input devices (e.g., manual controls) and/or be controlled via anexternal computing device 102, such as a user's phone (e.g., see FIG.1C). In one specific example, the heating device 100-1 of FIG. 1Bincludes a user input button 106. The heating device 100 may alsoautomatically run heating device profiles (e.g., FIGS. 5A-5E) thatinclude data indicating how the heating device 100 should operate overtime.

A heating unit can include a heating element and a substrate. Exampleheating units 202-1, 202-2, . . . , 202-13 (generally “heating unit202”) are illustrated herein (e.g., FIGS. 2C-2F). Example heatingelements 204-1, 204-2, . . . , 204-8 (generally “heating element 204”)are illustrated herein (e.g., FIGS. 2B-2F). Example substrates 200-1,200-2, 200-3, 200-4 (generally “substrate 200”) are illustrated herein(e.g., FIG. 2A).

The heating element 204 can generate heat that is applied to a user'sbody (e.g., via resistive heating). For example, the heating element 204may include a metallic wire that generates heat when power is deliveredto the heating element 204. The substrate 200 can provide support to theheating element 204 (e.g., to maintain shape) so that the heatingelement 204 can be positioned near the user's body. For example, theheating element 204 can be attached to the substrate 200 and/or formedon the substrate 200 (e.g., etched on the substrate). The substrate 200can be composed of a flexible material and/or a rigid material.

The heating device 100 includes device electronics (e.g., deviceelectronics 300 in FIGS. 3A-3D) that control the amount of heatgenerated by the heating elements 204. For example, the deviceelectronics may control heat by controlling power (e.g., current orvoltage) delivered to the heating elements 204. In some implementations,the heating device 100 may include one or more sensors (e.g.,temperature, orientation, motion, and/or pressure sensors). In theseimplementations, the device electronics may control the amount of heatgenerated by the heating elements 204 based on data acquired from theone or more sensors. In some implementations, the heating device 100 mayinclude a battery, such as battery 302 in FIGS. 3B-3D, FIG. 10B, andFIG. 13C. In these implementations, the device electronics can managecharging/discharging of the battery and control heating based on avariety of conditions, such as a state of charge of the battery, thecurrently running heating device profile, and/or a target device runtime indicated by the user.

In some implementations, the heating device 100 may include userinterface devices that allow the user to interact with the heatingdevice 100. For example, the heating device 100 may include buttons,switches, touch sensitive controls, and/or a display that allow the userto control/monitor the amount of heat being generated by the heatingdevice 100. The device electronics may communicate with the userinterface devices in order to control heating of the heating elements204 and provide output to the user. In some implementations, the deviceelectronics may include electronics that can communicate with anexternal wired/wireless computing device 102, such as a user's cellphone (e.g., see FIG. 1C). In these implementations, the user maycontrol/monitor the heat being generated by the heating device 100 usingthe external computing device 102. The external computing device 102 maybe referred to herein as a “user device 102.”

The heating device 100 can be powered in a variety of different ways. Insome implementations, the heating device 100 can be configured toreceive a battery 302 (e.g., rechargeable/non-rechargeable battery) fromthe user. The battery 302 may be removable by hand and/or fixed withinthe heating device 100 (e.g., accessible using tools). Additionally, oralternatively, the heating device 100 can be plugged into an externalpower source (e.g., via a power input port 104) that may power theheating device and/or charge the battery 302.

The arrangement of the one or more heating elements 204 may create oneor more heating zones. A heating zone refers to an area of the heatingdevice 100 in which heat is delivered to the user. A user may controlthe heat generated in a heating zone by controlling power delivered tothe heating element(s) 204 making up the heating zone. In some cases,heating zones can be surrounded by cooler areas of the heating device100 (e.g., areas not including heating elements 204). Put another way,if a heating device 100 has multiple heating zones, the heating zonescan be separated from one another. In other cases, the heating zones maynot be separated, but instead, some of the heating zones may mergetogether such that the two heating zones are bridged by a heated areainstead of a cooler area.

The heating device 100 can be configured to operate in one or more ofthree modes, which may be referred to herein as a manual mode, anautomatic mode, or a mixed mode. The heating device 100 can operate in amanual mode in which the heating device is configured to generate heatin response to a user's manual input. For example, while operating inthe manual mode, a user can control heating using manual controls on theheating device 100 and/or using the user device 102. In a more specificexample, the user can incrementally increase/decrease heating indifferent heating zones using manual controls and/or graphical controlsrendered on a graphical user interface (GUI) of the user device 102. Inthe manual mode, the user may control one or more of the heating zones.If the heating device 100 has multiple heating zones, the user maymanually control the heating zones independently or together.

The heating device 100 can operate in an automatic mode in which theheating device 100 generates heat according to a heating profile, orsequence of profiles, loaded on the heating device 100. The heatingprofile can include data indicating how the heating device 100 shouldheat the one or more heating zones. For example, if a heating device 100includes a single heating element 204, the heating profile may includedata that indicates how to heat the heating element 204. In thisexample, the heating profile may include data indicating the amount ofpower (e.g., voltage or current) to be delivered to the heating element204 over a period of time. FIGS. 5A-5E illustrate example heatingprofiles that may be used by the heating device 100. In heating devices100 including multiple heating elements 204, a heating profile caninclude data indicating the amount of power (e.g., voltage or current)to be delivered to each of the multiple heating elements 204. A heatingprofile may also indicate how the heating device 100 should operate inresponse to data acquired from one or more sensors included on theheating device 100. For example, the heating profile may indicatewhether to increase/decrease the delivery of power based on a detectedtemperature.

The heating device 100 can store one or more heating profiles. In someimplementations, the heating profiles may be stored permanently inmemory (e.g., in a ROM), and the user can select from the heatingprofiles using manual controls and/or a GUI. In some implementations,the user can load different heating profiles onto the heating device 100(e.g., from the user device 102) and then select from the loaded heatingprofiles.

The heating device 100 may operate in a mixed mode during which the usercan modify/update a heating profile while the heating device 100 iscontrolling heat according to the heating profile. Modification of theheating profile may refer to a situation where any portion of theheating profile is changed by the user. The user can modify the heatingprofile in a variety of different ways. For example, the user may modifya heating profile by: 1) adjusting the amount of heat generated (e.g.,the voltage or current) by one or more heating elements 204, 2)adjusting the frequency of the heat generated (e.g., frequency ofheating pulses) in one or more heating elements 204, 3) adjusting timingdelays between the one or more heating elements 204, and/or 4) loading anew heating profile for one or more of the heating elements 204. In somemixed mode implementations, the heating device 100 may memorize aheating profile generated by the user. For example, the user may modifythe amplitude of heat generated by the heating device 100 (e.g., usingthe user device 102 and/or manual controls) in one or more heatingelements 204 and the heating device 100 may store a heating profile thatcorresponds to the user's heating pattern.

In some implementations, the heating device 100 can be configured tooperate in any of the three modes. For example, the heating device 100can be configured to allow the user to select the mode (e.g., using abutton or GUI). In some implementations, the heating device 100 can havemore limited functionality. For example, the heating device 100 may beconfigured to operate in one or two of the modes, but not the othermode(s). For example, the heating device 100 may be configured tooperate in the manual mode, but not the automatic or mixed modes.

The user can generate new heating profiles in a variety of differentways. In some implementations, the user can create a new heating profileusing a computing device other than the heating device 100, such as acell phone or laptop computer. The user can then load the newly createdheating profile onto the heating device 100 (e.g., using the user device102). In some implementations, the user can create a new heating profilefrom scratch (e.g., without using another existing heating profile). Inother implementations, the user can create a new heating profile bymodifying an existing heating profile. For example, the user can modifyan existing heating profile running on the heating device 100 (e.g., inthe mixed mode) and then save the modified heating profile as a newheating profile. As another example, the user may load an existingheating profile on an external computing device, modify the loadedheating profile, and then save the modified heating profile on theheating device 100 as a new heating profile. The user may also use theheating device 100 (e.g., a user input device such as a touchscreen) togenerate new heating profiles and/or modify existing heating profiles.

The heating device 100 can store one or more heating profiles in memory(e.g., memory 420 of FIG. 4 ). The heating device 100 can update thestored heating profiles over time. For example, the heating device 100can delete stored heating profiles and add additional heating profilesto memory. The heating device 100 can acquire heating profiles fromdifferent sources. For example, if the heating device 100 includeswired/wireless communication technology (e.g., WiFi, Bluetooth, etc.),the heating device 100 can retrieve heating profiles via the internet(e.g., from the remote server 802 of FIG. 8 ) and/or the user device102.

In some implementations, the heating device 100 can include one or moresensors. The sensors may include, but are not limited to, a temperaturesensor (e.g., FIG. 4 ), a motion sensor, an orientation sensor, and apressure/force sensor. A temperature sensor may indicate the temperatureof an area of the heating device 100 in the location of the temperaturesensor. Example temperature sensors may include, but are not limited to,thermocouples, thermistors, resistance temperature detectors, andsemiconductor based temperature sensors. A motion sensor may generate amotion signal that indicates an amount of motion of the heating device100 (e.g., rotation/translation). Example motion sensors may include,but are not limited to, linear or angular accelerometers, gyroscopes,magnetometers, or integrated inertial measurement units. An orientationsensor may generate an orientation signal that indicates the orientationof the heating device 100 (e.g., indicating a user's posture). Exampleorientation sensors may include, but are not limited to, linear orangular accelerometers, gyroscopes, magnetometers, or integratedinertial measurement units. A pressure/force sensor may indicate anamount of pressure/force in an area of the heating device 100.

One or more sensors may be located on or within the substrate 200. Thetemperature sensors may be positioned near heating elements 204 so thatthe temperature indicated by the temperature sensors reflect thetemperature near one or more heating elements 204. Integrating thetemperature sensors onto the substrate 200 may be beneficial in someimplementations. For example, integrating a temperature sensor onto thesubstrate (e.g., 310 in FIG. 3C) may provide for more accuratetemperature sensing at the location where heat is being delivered to theuser. Additionally, or alternatively, the temperature sensors may belocated farther from the heating elements, such as along with the deviceelectronics on the substrate or off the substrate. In someimplementations, a temperature sensor can be placed in contact with auser's body. For example, a temperature sensor may be embedded in thesubstrate or device package in contact with the user's body. As anotherexample, a temperature sensor may be attached externally to the heatingdevice via a wire and sandwiched between the user and the heating deviceduring use.

The orientation/motion sensors may also be included on the substrate 200and/or along with the device electronics 300 in order to detect theorientation/motion of the heating device 100 (i.e., the user). In someimplementations, an orientation/motion sensor may be included on theuser device 102 (e.g., a cell phone) which may be carried by the user(e.g., in their hand or pocket) and, therefore, detect theorientation/motion of the user. In these implementations, the userdevice 102 may communicate with the heating device 100 so that theheating device 100 can modify heating based on the user'sorientation/motion as determined by the user device 102.

The device electronics 300 may control heating based on data acquiredfrom the sensors. For example, with respect to a temperature sensor, thedevice electronics 300 may control the heating device 100 to maintain atarget temperature. As another example, the device electronics 300 maycontrol the heating device 100 to maintain a temperature that is lessthan a threshold temperature (e.g., a maximum user comfort temperatureand/or a maximum heating device temperature). With respect to theorientation/motion sensors, the device electronics 300 may changeheating profiles/intensity based on a user's orientation and/or amountof motion. In a specific example, if a motion sensor detects changesindicative of user movement, the device electronics 300 may beconfigured to generate a greater amount of heat to alleviate discomfortresulting from movement. In a different specific example, the deviceelectronics 300 may be configured to generate a greater amount of heatwhen a user is seated (e.g., as detected by the orientation/motionsensors) in order to alleviate discomfort resulting from sitting forlong periods of time.

The heating device 100 can determine a user status based on dataacquired from one or more sensors. The heating device 100 may loaddifferent heating profiles corresponding to the different user statuses.For example, the heating device 100 may include a seated heatingprofile, a standing heating profile, a walking heating profile, and arunning heating profile that may be loaded in response to the heatingdevice 100 detecting a corresponding user status. In a specific example,if the heating device 100 determines that a user is seated (e.g.,upright posture with little motion), the heating device 100 may load aseated heating profile. At a later time, if the heating device 100detects that a user transitions from a seated position to walking, theheating device 100 may load the walking heating profile. The user mayconfigure the different heating profiles for different statuses. In somecases, the user may configure the heating device 100 to cease heatingduring some user activities and provide heating during other activities.For example, the heating device 100 may be configured to remain in astandby state (e.g., where heating is turned off) when the user isseated, and then provide heating when the user is standing. A user mayconfigure the heating device 100 in such a manner when the user feelslittle or no discomfort when seated, but then feels discomfort whenstanding. Additional user statuses can include user posture, such aswhether the user is upright or leaning to one side. In someimplementations, instead of loading a different profile for a differentstatus, the heating device 100 can be configured to adjust parameters ofthe heating profile, such as the amplitude of the heating, the frequencyof heating pulses, or the phase difference between different heatingzones.

The heating device 100 can be configured to operate with varying degreesof autonomy with respect to a user device 102. In some implementations,the heating device 100 can be configured to operate without anycommunication with the user device 102. For example, the heating device100 may not include wired/wireless communication technology forcommunicating with a user device 102. In other implementations, theheating device 100 may be configured to communicate with the user device102, but operate autonomously without further communication with theuser device 102. For example, the heating device 100 may be configuredto receive heating profiles from the user device 102 and then operateaccording to the heating profiles without additional communication withthe user device 102. In other implementations, the heating device 100may be configured to make intermittent communication with the userdevice 102 and operate according to instructions and/or heating profilesreceived from the user device 102. In these examples, the heating device100 may intermittently communicate with the user device 102 to receiveinstructions, such as instructions for increasing/decreasing the amountof heat to be generated. Accordingly, in some cases, the user device 102can adjust operation of the heating device 100 over time while theheating device 100 is operating (e.g., in the automatic and/or mixedmode).

In some examples, the user device 102 may generate instructions based onuser input received on the user device 102, such as user input receivedfrom a GUI in FIGS. 9A-9K. The user device 102 may then wirelesslytransmit the user-input instructions to the heating device 100. Theheating device 100 may control the amount of power to the heatingelements 204 based on the received user-input instructions (e.g., toincrease/decrease heating).

The user device 102 and heating device 100 can communicate using avariety of different communication protocols. In some implementations,communication between the user device 102 and the heating device 100 mayinvolve pairing followed by periodic polling/updating of data. Theconnection between the user device 102 and the heating device 100 may becontinuous (e.g., streaming data and/or control). Alternatively, theconnection between the user device 102 and the heating device 100 may beintermittent (e.g. downloading of a profile and/or instructions).

FIGS. 1A-16E illustrate features of example heating devices 100. FIGS.1A-1C and 10A-15 illustrate different example heating device formfactors. FIGS. 2A-2F illustrate example heating units. FIGS. 3A-3Dillustrate example heating units connected to other components, such asdevice electronics, a battery, and a sensor. FIG. 4 is an examplefunctional block diagram of a heating device. FIGS. 5A-5E illustrateexample heating profiles that may run on a heating device 100. FIGS.6A-6C illustrate example methods describing different heating devicemodes of operation. FIGS. 7A-7C are directed to providing immediateheating. FIG. 8 illustrates a plurality of heating devices incommunication with a remote server via a plurality of user devices.FIGS. 9A-9K illustrate example GUIs on a user device that the user mayinteract with in order to control/monitor the heating device. FIGS.16A-16E illustrate example sleeves and garments that may hold theheating device.

FIGS. 2A-2F illustrate a variety of different substrates 200 havingdifferent shapes and arrangements of heating elements 204. FIG. 2Aillustrates a variety of different substrate shapes and features, suchas rectangular substrates 200-1, a substrate including cutouts 200-2,substrates including protrusions 200-3 (e.g., lobes), and a substrate200-4 including strips. Although not illustrated, the substrates 200 ofFIG. 2A may include heating elements 204 (e.g., in the substrate or onone surface of the substrate).

A substrate 200 may be flexible or rigid. In some implementations, theentire substrate may be flexible. Although some of the substrates 200 inFIGS. 2A-2F are illustrated as being flexed, any of the substrates inFIGS. 2A-2F may be flexible. Flexibility may allow the substrate toconform to the user's body during use. In other implementations, theentire substrate may be rigid. In still other implementations, thesubstrate may include portions that are rigid and portions that areflexible. The entire substrate may be formed from the same material insome cases. In other cases, the substrate may include portions that areformed from different materials. A flexible portion of substrate may bemade rigid by reinforcing a portion of the substrate with additionalmaterial and/or different material. FIGS. 3A-3B illustrate a substratethat is partially rigid and partially flexible. The rigid portion of thesubstrate in FIGS. 3A-3B includes device electronics 300.

A substrate 200 can be formed from any material that is tolerant to thelevels of heat generated by the heating element(s) 204 and otherprocessing steps used to fabricate the heating unit 202 (e.g., ovenreflow or wave flow soldering). Example materials may include, but arenot limited to, polyester, polyimide, and silicone. In someimplementations, the substrate may include a single layer of material.In other implementations, the substrate may include multiple layers ofmaterial that are bonded to one another.

A single substrate 200 can include one or more heating elements 204. Thecombination of substrate 200 and one or more heating elements 204 may bereferred to herein as a “heating unit 202.” A heating device 100 mayinclude one or more heating units 202. For example, a heating device 100may include a heating device package (e.g., FIGS. 1A, 10B, and 13C) thatincludes one or more heating units 202.

In some implementations, a heating element 204 may be formed from anelectrical conductor that can provide resistive heating. The heatingelement 204 may be formed from a metallic material. Example metallicmaterials may include, but are not limited to, nichrome, FeCrAl alloy,cupronickel, and platinum. In implementations in which the substrate 200includes a metallic layer, the heating element 204 may be formed byremoving (e.g., etching) excess portions of the metallic layer from thesubstrate 200. In these implementations, the remaining metallic layermay form the heating element 204. In other implementations, the heatingelement 204 may be formed from wires that are connected to the substrate200. For example, the wire heating elements may be embedded in thesubstrate or sandwiched between two layers of the substrate. In onespecific example, a heating unit 202 may include a polyimide orpolyester sheet with etched metal heating elements. In another specificexample, a heating unit 202 may include a wire sandwiched between twosilicone layers that are vulcanized together (e.g., ½ mm thicknesstotal). In another specific example, a heating unit 202 may include anetched metal layer sandwiched between silicone layers.

The substrate 200 can include one or more heating elements 204 that canbe arranged in a variety of different ways. In some implementations, asubstrate 200 can include a single heating element 204 (e.g., FIG. 2B).In other implementations, a substrate 200 can include multiple heatingelements 204 (e.g., FIG. 2C). The multiple heating elements 204 may beseparate from one another. In other cases, any number of heatingelements 204 may be connected in series and/or parallel.

The heating elements 204 may have a linear and/or curved shape. Some ofthe heating elements 204 illustrated in the figures (e.g., FIG. 2C) arelaid out in a tortuous shape in order to distribute heat along thesurface of the substrate 200 that delivers heat to the user's body. Inother examples, the heating elements 204 can be laid out in a circularshape (e.g., FIG. 2E) to generate a circular heating zone. It iscontemplated that the heating elements 204 may be laid out in othershapes in addition to those illustrated herein.

If the heating unit 202 includes multiple heating elements 204, themultiple heating elements 204 can be arranged in a variety of differentways. In some implementations, the heating elements 204 can be arrangednext to one another (e.g., FIG. 2C). In other implementations, theheating elements 204 may be arranged such that one heating element 204surrounds another heating element 204. In still other implementations, aheating element 204 may be intertwined with another heating element 204in a different manner.

Referring to FIG. 2B, the heating units 202 may include heating elementcontacts 206. The heating element contacts 206 are electrically coupledto the heating elements 204. In some examples, the heating elementcontacts 206 may be formed from the same material as the heating element204. For example, the heating element contacts 206 may be the ends ofwires used for heating elements 204 or etched areas fabricated alongwith etched heating elements 204.

The heating element contacts 206 may provide points where electricalcontact (e.g., a low resistance contact) can be made with the heatingelement 204. For example, the device electronics 300 may electricallycouple to the heating elements 204 via heating element contacts 206. Aheating element 204 may include two or more heating element contacts206. In some implementations, a single heating element 204 may includeheating element contacts 206 at each end of the heating element 204(e.g., FIG. 2B). Additionally, or alternatively, a heating element 204may include multiple heating element contacts 206 along the heatingelement 204 (e.g., FIG. 2D). Although the device electronics 300 may becoupled to the heating elements 204 via heating element contacts 206 andwires 208, the device electronics 300 may be coupled to the heatingelements 204 via other types of electrical coupling. For example, insome implementations, the device electronics 300 may be included on thesubstrate 200 and may be connected to the heating elements 204 via acontinuous connection, such as a set of metal traces between the deviceelectronics 300 and the heating elements 204.

The device electronics 300 deliver power to a heating element 204 viaheating element contacts 206 for the heating elements 204. For example,the device electronics 300 may deliver power to a single heating element204 having two heating element contacts 206 by delivering power to theheating element 204 between the two contacts 206. As another example, ifthe heating element 204 includes three contacts (e.g., FIG. 2D and FIG.2F), the device electronics 300 may deliver power to a first portion ofthe heating element 204 between a first pair of heating element contacts206 on opposite sides of the first portion of the heating element 204.Additionally, in this example, the device electronics 304 may deliverpower to a second portion of the heating element 204 between a secondpair of heating element contacts 206 on opposite sides of the secondportion of the heating element 204. In this example, one of the threeheating element contacts 206 is included in both the first and secondpairs of heating element contacts 206.

The device electronics 300 control heat generated by the heatingelements 204 by controlling the delivery of power to the heatingelements 204. For example, the device electronics 300 may control powerdelivered to a heating element 204 by controlling the voltage appliedacross the heating element 204 (i.e., between two contacts 206). Asanother example, the device electronics 300 may control the powerdelivered to a heating element 204 by controlling the current throughthe heating element 204. In some implementations, the heating device 100(e.g., the device electronics 300) may include maximum power deliveryvalues, such as a threshold power/current/voltage level at which theheating device 100 may limit the delivery of power to one or moreheating elements 204.

The layout of the heating elements 204 defines the heating zones. Insome implementations, the shape of the substrates 200 can be configuredto match the heating zones. For example, with respect to the substrate200-3 of FIG. 2A that includes a plurality of lobes 210, each of thelobes 210 can include one or more heating elements 204. In this example,each of the lobes 210 may include a heating zone.

In some implementations, the substrate 200 may include an adhesive layer(not illustrated). The adhesive layer can attach to the substrate 200 onone surface and adhere to the user's skin on the other surface. The skinadhesive layer may include, but is not limited to, silicone gels,acrylic adhesives, polyurethane gels, and hydrogels. The adhesive layermay include a removable cover layer that can be peeled from the adhesivelayer to expose the adhesive layer. The removable cover layer may be asmooth layer that adheres to the underlying adhesive but does not adhereto the user. In some implementations (e.g., FIG. 10D), the adhesivelayer and removable cover layer may be attached to the device packageinstead of the substrate 200 of the heating unit 202. In someimplementations, the adhesive layer may be removable. For example, theadhesive layer may include an adhesive or other type of attachment forconnecting to the substrate/package. In some implementations, theheating device 100 may include other types of adhesive layers (notshown) used in construction of the heating device 100, such as adhesivelayers that adhere different packaging components to one another.

The device electronics 300 can control heat generated by the heatingelements 204 based on a heating profile, user input, and/or sensor data(e.g., in the manual/automatic/mixed mode). The device electronics 300may also perform a variety of other functions described herein. Forexample, the device electronics 300 can provide communication with theuser device 102, control charging of the battery 302, and controlinteractions with user interface devices.

The device electronics 300 can be mounted in a variety of differentlocations. In some implementations, the device electronics 300 can bemounted (e.g., soldered) to the substrate 200 (e.g., FIG. 3A). In FIG.3A, the device electronics 300 are included on a portion of thesubstrate 304 that is more rigid than the rest of the substrate. Inother implementations, the device electronics 300 may be attached to aflexible portion of the substrate.

Although the device electronics 300 can be mounted to a substrate 200,in some implementations, at least a portion of the device electronics300 can be mounted in another location. For example, with respect toFIG. 3B, the device electronics 300 can be mounted to a printed circuitboard (PCB) 306 that is external to the substrate 200, but included inthe device package. In these implementations, the PCB 306 including thedevice electronics 300 can be electrically coupled to the heatingelements 204 via the heating element contacts 206.

In some implementations, an external PCB 306 can be wired (e.g.,permanently) to the heating element contacts 206. For example, theexternal PCB 306 can be soldered or otherwise connected to the heatingelement contacts 206 (e.g., via wires). In other implementations, asillustrated in FIGS. 3B-3D, the heating device 100 can include a heatingunit connector 308 that can electrically couple the external PCB 306 tothe heating elements 204. The heating unit connector 308 can include twoconnection components that can be disconnected from one another so thatthe external PCB 306 and the heating elements 204 can be disconnectedfrom one another. The heating unit connector 308 can include anelectronics side and a heating unit side. The two sides of the connectorcan be connected to electrically couple the device electronics 300 andthe heating elements 204. The illustrated connector 308 is a low-profileconnector, such as a Molex 36877-0004 connector. The connector 308 mayhave a positive-latching connector design so that the connector 308 doesnot become detached during use. Additionally, the connector 308 may bewater-proof to allow for easy cleaning or moisture exposure during use.In some implementations, the PCB 306 can be connected to the heatingelements 204 with other types of detachable connectors than thoseillustrated. For example, the external PCB 306 may include a socket intowhich the heating unit can be inserted, such as a Universal Serial Bus(USB) connection or other low profile power connector. As an additionalexample, the heating unit 202 may include a socket into which theexternal PCB wires/connectors can be inserted.

The heating unit 100 may also include a battery connector 309. Thebattery connector 309 can include two connection components that can bedisconnected from one another so that the external PCB 306 and thebattery 302 can be disconnected from one another. The battery connector309 may include similar connectors as described with respect to theheating unit connector 308.

In implementations where the device electronics 300 are detachable fromthe heating unit(s) 202 (e.g., via the heating unit connector 308),different heating units 202 having different arrangements of heatingelements 204 (e.g., layout/number of heating elements) and sensors maybe interchangeable with the same device electronics 300. In other cases,a new heating unit 202 having the same arrangements as the old heatingunit 202 could be swapped out (e.g., in the case the old heating unit isbroken or worn out).

FIGS. 3C-3D illustrate how different heating units 202 having differentheating element and sensor arrangements can be connected to the deviceelectronics 300 via the heating unit connector 308. In FIG. 3C, thedevice electronics 300 can connect to two heating element contacts 206for a single heating element 204. The device electronics 300 in FIG. 3Ccan also connect to a temperature sensor 310 included on the substrate200. In FIG. 3C, the device electronics 300 can deliver power to theheating element 204 via the heating element contacts 206 and alsodetermine the temperature indicated by the temperature sensor 310.

In FIG. 3D, the device electronics 300 are connected to a heating unit200-5 that is different than the heating unit 202-9 of FIG. 3C. In FIG.3D, the heating unit 202-5 includes three heating element contacts for asingle heating element, whereas the heating unit 202-9 of FIG. 3Cincludes a heating element and a temperature sensor 310. Although theheating element and sensor arrangement are different, the deviceelectronics 300 may be configured to operate the heating units 200 ofFIG. 3C and FIG. 3D. For example, the device electronics 300 can beconfigured to deliver power to the heating element of FIG. 3C anddetermine the temperature indicated by the temperature sensor 310. Thedevice electronics 300 can then be reconfigured to deliver power to theheating element of FIG. 3D via the three heating element contacts.

In some implementations, the device electronics can deliver power to theheating elements 204 and measure temperature using the same circuits.For example, if the temperature sensor 310 is a resistive temperaturesensor (e.g., a thermistor or resistance temperature detector), thedevice electronics 300 may include circuits that deliver power to thesensor 310 in a manner similar to the heating elements 204, determinethe resistance of the sensor 310, and determine temperature based on thedetermined resistance. In other implementations, the device electronics300 may include additional components that interface with thetemperature sensor 310, such as circuits that interface with athermocouple or a digital temperature sensor. The device electronics 300may include switches (e.g., discrete switches and/or switches includedon a microcontroller) that may be used to reconfigure the functionalityfor each of the contacts. Although the figures of 3C-3D illustratereconfiguration of the device electronics 300 to operate with threedifferent types of connections (e.g., heating element and sensorconnections), device electronics 300 may be configured to operate whileconnected to any number of connections.

As described with respect to FIGS. 3C-3D, the device electronics 300 canbe configured (e.g., using switches) to couple to sensors and/or heatingelements 204 using the same contacts. In some implementations, thedevice electronics 300 may be configured to operate with a variety ofdifferent heating units 202 having a different number of contacts, adifferent number of heating elements 204, different arrangements ofheating elements 204, and/or different types of sensors. The deviceelectronics 300 may determine how to operate with different heatingunits 202 in a variety of different ways. In some implementations, auser may manually configure the device electronics 300 (e.g., using aGUI on the user device 102) to operate with a specific heating unit 202.For example, the user may enter a model number of the heating unit 202into the GUI that indicates to the user device 102 and/or heating device100 how to configure the device electronics 300 for operating thespecific heating unit 202. In some implementations, the deviceelectronics 300 may automatically detect the specific heating unit 202attached to the device electronics 300 and then correctly operate thespecific heating unit 202. The device electronics 300 may automaticallydetect the heating unit 202 in a variety of ways, such as via applyingtest voltage/current to determine heating element arrangement/resistanceand whether a sensor is attached. In some cases, a heating unit 202 mayinclude an identification circuit (e.g., a ROM) that indicates detailsof the heating unit 202 to the device electronics 300, such as thenumber of heating elements 204, the arrangement of heating elements 204,and the number/arrangement of sensors. The device electronics 300 maydetermine the configuration of the heating unit 202 and how to operatethe heating unit based on communication with the identification circuit(e.g., by reading the ROM).

FIG. 1C and FIG. 4 illustrate a heating device in communication with auser device (e.g., a cell phone). The device electronics 300 can includewireless/wired communication technology that communicates with the userdevice 102. As described herein with respect to FIG. 8 , the user device102 can communicate with remote computing devices 802 via a network 804,such as the internet. The user device 102 can also provide a variety offunctionality with respect to the heating device 100. In someimplementations, the user device 102 may generate a GUI (e.g., FIGS.9A-9K) that the user may use to perform a variety of differentoperations with respect to the heating device 100. For example, the usermay interact with the GUI to control heating of the heating device 100.In some examples, the user may interact with GUI element controls tocontrol heating. In other examples, the user may select a heatingprofile and upload the heating profile to the heating device 100 usingthe GUI. The user may select a profile on the heating device 100 to run,select a heating profile from the user device 102 to load onto theheating device 100, and/or retrieve a heating profile from a remoteserver 802 to run on the heating device 100. The user may also monitorvarious heating device parameters, such as the battery status, thecurrently running heating profile (e.g., a heating map), and theremaining time for which the heating device 100 may run the heatingprofile. Additional features of the user device 102, heating device 100,and aspects of communication between the devices 100, 102 are describedherein.

FIG. 4 is a functional block diagram of an example heating device 400.The various modules included in the heating device 400 representfunctionality (e.g., circuits and other components) included in theheating devices 100. Modules of the present disclosure may include anydiscrete and/or integrated electronic circuit components that implementanalog and/or digital circuits capable of producing the functionsattributed to the modules herein. For example, the modules may includeanalog circuits (e.g., amplification circuits, filtering circuits,analog/digital conversion circuits, and/or other signal conditioningcircuits). The modules may also include digital circuits (e.g.,combinational or sequential logic circuits, memory circuits, etc.).Memory may include any volatile, non-volatile, magnetic, or electricalmedia, such as a random access memory (RAM), read-only memory (ROM),non-volatile RAM (NVRAM), electrically-erasable programmable ROM(EEPROM), Flash memory, or any other memory device. Furthermore, memorymay include instructions that, when executed by one or more processingcircuits, cause the modules to perform various functions attributed tothe modules herein. The device electronics 300 of the heating devices100, 400 described herein are only example device electronics. As such,the types of electronic components used to implement the deviceelectronics may vary based on design considerations.

The functions attributed to the modules herein may be embodied as one ormore processors, hardware, firmware, software, or any combinationthereof. Depiction of different features as modules is intended tohighlight different functional aspects and does not necessarily implythat such modules must be realized by separate hardware or softwarecomponents. Rather, functionality associated with one or more modulesmay be performed by separate hardware or software components, orintegrated within common or separate hardware or software components.

The heating device 400 includes a processing module 402 (e.g., aprocessor and/or microcontroller), a communication module 404, aninterface module 406, a power module 408, a heating control module 410,and a temperature sensing module 412. The heating device 400 may alsoinclude a battery 414, heating elements 416-1, 416-2, . . . , 416-N, andone or more sensors (e.g., a temperature sensor 418). The processingmodule 402 communicates with the modules included in the heating device400. For example, the processing module 402 may transmit/receive datato/from the modules and other components of the heating device 400. Asdescribed herein, the modules may be implemented by various circuitcomponents. Accordingly, the modules may also be referred to as circuits(e.g., a communication circuit, temperature sensing circuit, heatingcontrol circuit, interface circuit, and power circuit).

The processing module 402 may communicate with the memory 420. Thememory 420 may include computer-readable instructions that, whenexecuted by the processing module 402, cause the processing module 402to perform the various functions attributed to the processing module 402herein. The memory 420 may include any volatile, non-volatile, magnetic,or electrical media, such as RAM, ROM, NVRAM, EEPROM, Flash memory, orany other digital media. In some implementations, the processing module402 may include a microcontroller which may include additional featuresassociated with other modules, such as an integrated Bluetooth LowEnergy transceiver.

The temperature sensing module 412 is electrically coupled to thetemperature sensor 418. The temperature sensor 418 indicates thetemperature in the area in which the temperature sensor 418 is located.The temperature sensing module 412 may determine the temperature in thelocation of the temperature sensor 418. In some implementations, thetemperature sensor 418 may generate a temperature signal that indicatesthe temperature in the area. For example, the temperature sensor 418 maygenerate a digital signal that the temperature sensing module 412 mayuse to determine the temperature. As another example, if the temperaturesensor 418 is a passive thermistor, the temperature sensing module 412may measure a current/voltage generated by the temperature sensor 418and determine the temperature based on the measured current/voltage.

The interface devices 422 may include user-feedback devices and/or userinput devices. For example, user-feedback devices may include, but arenot limited to, a display (e.g., a touchscreen display), vibrationdevices, lighting devices (e.g., LEDs), and a speaker. The interfacemodule 406 can control the user-feedback devices. For example, theinterface module 406 may include display control/driver circuits,vibration control circuits, LED control circuits, speaker controlcircuits, and/or other control circuits. In some implementations, theprocessing module 402 may control the interface devices 422 via theinterface module 406. For example, the processing module 402 maygenerate control signals that the interface module 406 uses to controlthe interface devices 422. For example, the interface module 406 mayinclude circuits that deliver power/data to thedisplay/vibration/lighting devices, while the processing module 402controls the delivery of power/data to the display/vibration/lightingdevices.

Example user input devices include, but are not limited to, buttons(e.g., manual buttons and/or capacitive touch sensors), switches, and atouchscreen. The interface module 406 may include circuits for receivinguser input signals from the user input devices. The processing module402 may receive the user input signals from the interface module 406 andtake a variety of actions based on the user input signals. For example,the processing module 402 may detect a user pushing an on/off button andthen power on (i.e., turn on) the heating device 100 in response todetection of the button push. As another example, the processing module402 may detect a user pushing an on/off button while the heating device100 is powered on. In this example, the processing module 402 may poweroff (i.e., turn off) the heating device 100 in response to detection ofthe button push. As another example, the processing module 402 maydetect a user pushing a heating control button (e.g., +/− buttons) andthen increment/decrement the heat generated by the heating elements 416(or temperature setting) based on detection of the button push.

The communication module 404 can include circuits that provide wiredand/or wireless communication with the user device 102. In someimplementations, the communication module 404 can include wiredcommunication circuits, such as USB communication circuits. In someimplementations, the communication module 404 can include wirelesscommunication circuits, such as Bluetooth circuits and/or WiFi circuits.

Using the communication module 404, the heating device 400 and the userdevice 102 can communicate with each other. The processing module 402can transmit/receive data to/from the user device 102 via thecommunication module 404. Example data may include heating profiles andother information requests, such as status updates (e.g., chargingstatus, battery charge level, and/or heating device configurationsettings). The processing module 402 can also receiveinstructions/commands from the user device 102 (e.g., user-inputinstructions), such as instructions to increase/decrease heating. Insome implementations, the processing module 402 can receiveinstructions/commands from the user device 102 to power on or power offthe heating device 100. For example, the user device 102 may transmit apower-on/power-off instruction to power on/off the heating device 100.In some implementations, the processing module 402 (e.g., amicrocontroller) may include circuits that provide wired/wirelesscommunication (e.g., USB/Bluetooth). In some implementations, the userdevice 102 can transfer update data to the heating device 400 to updatethe software/firmware of the heating device 400.

The heating device 400 may include a battery 414 (e.g., a rechargeableor non-rechargeable battery). An example battery may include aLithium-Ion or Lithium-Polymer type battery, although a variety ofbattery options are possible. A power source (e.g., a wall adapter powercord or USB power plug) can be plugged into the power input port (e.g.,FIG. 1A) of the heating device 400 to charge the battery 414. Theheating device 400 includes a power module 408 that may control chargingof the battery 414, regulate voltage(s) of the device electronics 300,regulate power output to the device electronics 300, and monitor thestate of charge of the battery 414. In some implementations, the batteryitself may contain a protection circuit module (PCM) that protects thebattery from high current discharge, over voltage during charging, andunder voltage during discharge. In some implementations, the powermodule 408 may include circuits configured to modulate the voltage andcurrent into the battery 414 during charging. For example, the powermodule 408 may include a Microchip MCP73832 charge control IC andsupporting passive components. The power module 408 may also includeelectro-static discharge (ESD) protection.

In some implementations, the power module 408 may control charging ofthe heating device 400 from the user device 102. For example, theheating device 400 may draw power from the user device 102 (e.g., alaptop or tablet), which may allow the heating device 400 to run longer.In some implementations, the power module 408 may control charging ofthe user device 102 from the heating device 400. For example, theheating device 400 can deliver power to the user device 102 (e.g., aphone or tablet) to extend the battery life of the user device 102,which the user may be using to control the heating device 400. In somecases, if the user device 102 is in communication with the heatingdevice 400 and the battery is running low on the user device 102, theuser device 102 may prompt the user to plug into the heating device 400in order to charge the battery of the user device 102. In other cases,if the user device 102 is in communication with the heating device 400and the battery 414 is running low on the heating device 400, theheating device 400 may prompt the user to plug the heating device 400into the user device 102 in order to charge the battery 414 of theheating device 400 (e.g., prompt via a GUI on the user device 102).

The processing module 402 along with the heating control module 410 cancontrol the amount of heat generated by the heating elements 416. Forexample, the heating control module 410 can include electronics thatcontrol the amount of power delivered to the heating elements 416. Inone example, the heating control module 410 can include electronics thatswitch on/off the delivery of power to the individual heating elements416. As another example, the heating control module 410 can includeelectronics that can incrementally adjust the power delivery to theheating elements 416 (e.g., adjust current and/or voltage).

The processing module 402 may control the heating control module 410 todeliver power to the heating elements 416 according to user input and/ora heating profile. In some implementations, the heating control module410 may include metal-oxide semiconductor field-effect transistordevices (MOSFETs) (e.g., power MOSFETs) that are controlled by a gatevoltage generated by the processing module 402 (e.g., amicrocontroller). In implementations where MOSFET devices are used tocontrol current through the heating elements 416, the MOSFETs may becontrolled via pulse-width modulation (PWM) signals or on/off commandsgenerated by the processing module 402 (e.g., microcontroller).

The processing module 402 may control the heating control module 410 ina variety of different modes (e.g., a manual mode, automatic mode, andmixed mode). In the manual mode, the processing module 402 may controlthe heating control module 410 to deliver power based on user inputreceived via the user input devices on the heating device 400 and/orbased on user input received from the user device 102 (e.g., viawireless communication). In the automatic mode, the processing module402 may control the heating control module 410 to deliver poweraccording to a heating profile. In the mixed mode, the processing module402 may control the heating control module 410 to deliver poweraccording to a heating profile and/or user input.

The heating device 400 (e.g., memory 420) may store heating profilesthat include data indicating how to deliver power to one or more heatingelements 416. For example, the heating profiles may include dataindicating the voltage (e.g., analog voltage level and/or digitalaverage with PWM) to apply to one or more heating elements 416 overtime. As another example, the heating profiles may include dataindicating the current to deliver to one or more heating elements 416over time. A heating profile may include one or more heating elementprofiles. A heating element profile may include data indicating how todeliver power to a single heating element 416 (e.g., between two heatingelement contacts). In one example, if the heating device 400 includestwo heating elements 416, the heating profile may include two heatingelement profiles.

The heating profile (e.g., including multiple heating element profiles)can be stored in a variety of ways. In general, the data stored in theheating profile indicates to the processing module 402 and heatingcontrol module 410 how to deliver power to the heating element(s) 416.In some implementations, the heating profile may include a plurality ofdigital values indicating current/voltage to be delivered to the heatingelement(s) 416 over time. In other examples, the heating profile may bestored as a function that yields current/voltage over time. Note that insome cases, the values stored in the heating profiles may not be voltageor current values over time, but instead may be digital values (e.g.,PWM control values) used by the processing module 402 and/or the heatingcontrol module 410 to cause power to be delivered to the heatingelement(s) 416 over time.

FIGS. 5A-5E illustrate example current versus time curves that theheating device 100 may generate according to heating profiles stored onthe heating device 100. The time values associated with the curves mayvary, depending on the implementation. As such, the units of time arenot explicitly noted on the graphs. In some implementations, the graphsmay represent a duration on the order of seconds (e.g., 10-30 seconds induration). In other implementations, the graphs may represent a durationon the order of minutes (e.g., 1-5 minutes). Although the Y-axis islabeled as current(i), the curves may also represent voltage/powerdelivered to heating elements.

FIGS. 5A-5B illustrate current versus time for a single heating element.FIG. 5A illustrates delivering power to a heating element in arepetitive pattern. FIG. 5B illustrates delivering power to the heatingelement in a more irregular pattern. The pattern in FIG. 5B may berepeated (e.g., periodic) or non-repetitive.

FIGS. 5C-5D illustrate current versus time for multiple heatingelements. FIG. 5C illustrates a first and second current delivered tofirst and second heating elements. The first curve (solid line) may bestored as a first heating element profile for the first heating element.The second curve (broken line) may be stored as a second heating elementprofile for a second heating element. The heating profile for FIG. 5Cmay include both the first and second heating element profiles. Notethat the two heating element profiles of FIG. 5C store the same currentcurve, but the current curves are offset in time from one another. FIG.5D illustrates three current curves for three separate heating elements.The three curves include one solid curve and two broken curves. Thethree current curves are similar in shape, but offset in time from oneanother.

In some implementations, the user may perceive the offsetting of similarcurves as a wave of heat that passes across the heating device 100. Forexample, if a heating device 100 has first and second heating elementsnext to one another and operates according to FIG. 5C, the user mayfirst feel the heat generated by the first heating element and then feela similar heating in the adjacent second heating element as though theheat is flowing across the heating device from one heating element tothe next. In some implementations, the heating device 100 and/or userdevice 102 may include controls (e.g., buttons and/or GUI elements) thatthe user can use to cause the time offset between two or more heatingelements.

FIG. 5E illustrates two different current curves for two separateheating elements. Each of the current curves in FIG. 5E may be repeatedor non-repetitive. The current curves of FIG. 5E may provide anirregular pattern of heating that the user may perceive asunpredictable.

FIGS. 5A-5E illustrate a variety of different heating patterns. Heatingprofiles may include patterns similar to, or different from, theillustrated heating patterns (e.g.,regular/irregular/repetitive/non-repetitive). Additionally, a heatingprofile may include heating patterns that transition from repetitive tonon-repetitive and/or from regular to irregular (or vice versa) overtime. As described herein, a user may create new heating patterns ormodify existing heating patterns while using the heating device orworking offline.

The duration of heating pulses (e.g., as illustrated in FIG. 5D)deliverable by the heating device may vary depending on a variety ofparameters. In some implementations, the duration of heating pulses maybe selected based on response times of the heating device 100 and/or theuser's ability to perceive the delivered heat. For example, responsetimes of the heating device 100 (e.g., heating elements 204) affectingthe time required to deliver heat to a user may determine the minimumduration of heating pulses. As another example, a user's ability toperceive the changes in heating being delivered may determine theminimum duration of heating pulses. For example, if a user is unable todifferentiate heating pulses having a duration of less than one secondfrom heating pulses having a duration of one second, then the minimumpulse duration may be set to one second. The ability of a user toperceive changes in heating may depend on the region of the body towhich the heating device 100 is applied. Accordingly, the minimumduration of heating pulses may also depend on where the heating device100 is to be applied. In some implementations, the pulses illustrated inFIG. 5D may have a duration on the order of a second or more, althoughthe pulses may be set to a duration of less than a second if perceptibleby the user.

In some implementations, the heating device 100 can control powerdelivered to the heating elements 204 based on a sensed and/or estimatedtemperature. For example, the heating device 100 may control thedelivery of power to meet a target temperature that is adjustable by theuser. As another example, the heating device 100 may control thedelivery of power such that the temperature remains less than athreshold temperature, such as a temperature threshold set by a user ora maximum allowable temperature (e.g., in factory settings).

The heating device 100 can control the delivery of heat to the userbased on the temperature of the heating device 100 in proximity to theuser (e.g., the temperature of a heating zone). In some implementations,the heating device 100 can include one or more temperature sensors(e.g., 310 in FIG. 3C and 1124 in FIG. 11B) that sense temperatures inone or more heating zones. In implementations where the heating device100 includes one or more temperature sensors, the heating device 100 cancontrol heating based on temperature indicated by the temperaturesensor.

In implementations where the heating device 100 does not include atemperature sensor, the processing module 402 may estimate thetemperature and control heating based on the estimated temperature. Theprocessing module 402 may estimate the temperature based on one or morefactors, such as the amount of power delivered to the heating elements204 (e.g., voltage or current) and the amount of time over which thepower has been delivered. In some implementations, the memory 420 mayinclude temperature estimation models and/or tables that the processingmodule 402 may use in order to estimate temperature. For example, themodels/tables may indicate an estimated temperature for power valuesand/or a heating profile over time. The processing module 402 may alsodetermine the temperature based on a combination of temperatureindicated by the temperature sensors and the estimated temperature. Insome implementations, the memory 420 may include models/tables that usesensed temperatures to estimate additional temperatures.

Although the heating device 100 can control heating based on temperature(e.g., a target temperature), in some implementations, the heatingdevice 100 can control heating based on alternative and/or additionalparameters, such as an amount of energy/heat delivered to a user. Forexample, the heating device 100 may control the delivery of heat toreach a target amount or rate of energy/heat delivery. The heatingdevice 100 may determine the amount of energy/heat delivered based on avariety of parameters, such as the delivered current/voltage and theamount of time over which the current/voltage was delivered.

In some implementations, the heating device 100 may include componentsthat indicate an amount of pressure placed on the heating device 100(e.g., a pressure sensor). Such components may be embedded in and/orattached to the substrate 200 or device packaging. In theseimplementations, the heating device 100 may control heating based on theindicated pressure (e.g., as indicated by the pressure sensor). In oneexample, the heating device 100 may decrease an amount of heat beingdelivered to the user if the pressure sensing components indicate thatthe heating device 100 is pressed more firmly against the user, as thepressure may be indicative of a close contact and better heat transferto the user. In another example, the heating device 100 may beconfigured to increase heating in response to increased pressure placedon the heating device 100. In this example, if a user presses their handon top of the heating device to increase pressure on the heating device100, the heating device 100 may respond by delivering more heat to thearea.

FIGS. 6A-6C illustrate example methods describing operation of theheating device 100 in different modes of operation. FIG. 6A illustratesan example method describing operation of the heating device 100 in themanual mode. In FIG. 6A, the heating device 100 is initially started(e.g., using an on/off button) at block 602. At block 604, the heatingdevice 100 (e.g., the device electronics 300) sets an initial powerdelivery to the one or more heating elements 204. At block 606, theheating device 100 then waits for user input, which may include userinteraction with manual controls (e.g., user input buttons) on theheating device 100 and/or user interaction with a GUI on the user device102. Example user input may include incrementing/decrementing heat(e.g., power delivery) to be delivered to the user. If the heatingdevice 100 receives user input, the heating device 100 may modify powerdelivery to the one or more heating elements 204 according to the userinput at block 608.

FIG. 6B illustrates an example method describing operation of theheating device 100 in the automatic mode. In FIG. 6B, the heating deviceis initially started at block 610. Upon starting, the heating device 100may load a heating profile at block 612. For example, the heating device100 may load a stored heating profile or may receive a heating profilefrom the user device 102. At block 614, the heating device 100 controlsheat (e.g., power delivery) for one or more heating elements 204according to the loaded heating profile.

FIG. 6C illustrates an example method describing operation of theheating device 100 in the mixed mode. In blocks 620-624 of FIG. 6C, theheating device 100 is initially started, loads a heating profile, andcontrols heat according to the heating profile, as described withrespect to FIG. 6B. In the mixed mode, at block 626, the user may modifythe heating profile and/or load another heating profile onto the heatingdevice 100. For example, the user may provide user input that modifiesthe currently running heating profile via manual controls on the heatingdevice 100 and/or GUI controls on the user device 102. The user may alsoload new heating profiles to run on the heating device 100. For example,the user may select a new heating profile stored on the heating device100 or download a heating profile from the user device 102 to theheating device 100. In block 628, the heating device 100 may run the newprofile until the user modifies the new profile and/or loads anotherheating profile.

A positive heating experience for the user may include the immediatedelivery of heat to the user's body at the user-desired heating level.However, the ability of the heating device 100 to deliver immediate heatmay be limited due to various power delivery limitations associated withthe battery and/or other device electronics. For example, limited poweroutput from the battery may prevent the heating device 100 fromimmediately reaching a desired temperature and/or heat output. Asanother example, initial power provided to the heating elements 204 maybe absorbed by materials in the heating device 100, which may preventimmediate heat transfer to the user. FIGS. 7A-7C are directed totechniques for operating a heating device 100 in a manner that mayprovide the user with a perception of immediate heat delivery withoutexceeding power limitations of the battery.

FIG. 7A illustrates an example heating unit 202-10 including fourheating elements arranged symmetrically on the substrate. The firstheating element 204-7 and the second heating element 204-8 areassociated with first and second heating zones, respectively. The firstheating element 204-7 covers a first heating zone having a smaller areathan the second heating zone covered by the second heating element204-8. In the example of FIG. 7A, the first heating zone is centrallylocated on the right side of the substrate. The second heating zone islocated around the periphery of the first heating zone.

In order to provide immediate heat delivery to a user, the heatingdevice 100 may be configured to first provide an excess of power to theheating element associated with the smaller area (e.g., the firstheating element 204-7). Excess power may refer to an amount of power perarea of heating zone that is greater than that desired by the user overthe long term in either the first or second heating zones. The provisionof excess power may rapidly heat the smaller heating zone. In somecases, the power delivery limitations of the heating device 100 maylimit the ability of the heating device 100 to deliver enough power toimmediately heat more heating zones, but may allow for immediate heatingof a smaller heating zone. Providing the user with immediate heating insuch a manner may provide a pleasing user experience. Additionally,depending on positioning of the heating device 100 on the user's body,the user may not be able to immediately perceive that only a smallerportion of the heating unit is being heated. In this case, the immediateheating may be perceived as being provided across the additional heatingzones. The user may perceive immediate heating on the order of seconds(e.g., 3-5 seconds).

After heating the smaller heating zone for a period of time, the heatingdevice 100 may begin providing more power to the larger heating zone(e.g., the second heating zone) to bring the larger heating zone to theuser's desired power level. The heating device 100 may also decreasepower to the smaller heating zone toward the user's desired power level.After decreasing/increasing power to the smaller/larger heating zones,the smaller and larger heating zones may level out at the user's desiredpower level(s) for the zones.

In some implementations, the heating device 100 may control the initialpower delivery to the smaller heating zone based on a detectedtemperature associated with the smaller heating zone. For example, theheating device 100 may ramp the power delivery up to a thresholdtemperature (e.g., a user-specified maximum temperature) and then limitthe power delivery such that the threshold temperature is not exceeded.

Implementation of immediate heating may vary based on a variety offactors. Example factors that may affect implementation of immediateheating include, but are not limited to, the area of the heating zones,the amount of heating element material in the heating zones (e.g.,length/diameter of wire), heating element geometry within the heatingzone, the resistivity of the heating elements, and the voltage/currentapplied to the heating elements. Although substantially concentricheating zones are illustrated in FIG. 7A, other heating devices mayinclude other arrangements of heating elements/zones. Although immediateheating may be implemented using two heating elements defining twoheating zones, immediate heating may be implemented using other numbersof heating elements and heating zones.

FIG. 7B illustrates power delivery per area of heating zone for thefirst heating element 204-7 and the second heating element 204-8 of FIG.7A. In FIG. 7B, the first heating element 204-7 receives excess power toprovide immediate heating to the user. The first heating element 204-7delivers power to the user for a period of time before the secondheating element 204-8 begins delivering power. Power delivered to thefirst heating element 204-7 is decreased upon ramping power to thesecond heating element 204-8. In some implementations, the powerdelivery per area can be operated as a step function (e.g., the firstheating element 204-7). The power delivery per area may also be operatedin another manner (e.g., a ramp function as illustrated with respect tothe second heating element 204-8). FIG. 7B illustrates a single set oftraces for two heating elements. In other implementations, the tracesmay converge to the same power level or cross one another.

FIG. 7C illustrates a method for providing immediate heating to a user.The heating device 100 may provide immediate heating in a variety ofscenarios, such as when the heating device 100 is being turned on orwhen any burst of heat is desired. In some implementations, the user maymanually set the desired power level (e.g., using the GUI). In otherimplementations, the desired power level may be set according to theheating profile. The method of FIG. 7C is described with respect toFIGS. 7A-7B.

Initially, in block 700, the heating device 100 delivers excess power tothe first heating element 204-7 in the first heating zone. After aperiod of time, in block 702, the heating device 100 starts delivery ofpower to the second heating element 204-8 in the second zone. In block704, the heating device 100 increases power to the second heatingelement 204-8 and decreases power to the first heating element 204-7. Insome implementations, the heating device 100 may start increasing powerto the second heating element 204-8 at approximately the same time asthe heating device 100 starts decreasing power to the first heatingelement 204-7. In block 706, the heating device 100 maintains thedelivery of power to the first and second heating elements 204-7, 204-8.

FIG. 8 illustrates a plurality of user devices 800-1, 800-2, . . . ,800-N in communication with a remote server 802 via a network 804. Eachof the user devices 800 is in communication with a different heatingdevice 806-1, 806-2, . . . , 806-N. In FIG. 8 , different users may eachown/operate one of the user devices 800 and one of the heating devices806. The remote server 802 may be owned/operated by a party other thanthe users. For example, the remote server 802 may be operated by thedeveloper/manufacturer of the heating devices 806. In these examples,the developer/manufacturer of the heating devices 806 can provide dataand programs to the remote server 802 for download by the user devices800.

In some implementations, the remote server 802 can provide one or moreprograms (e.g., applications) to the user devices 800. The one or moreprograms may be executed by the user devices 800 to interact with theheating devices 806. For example, the one or more programs may generateGUIs on the user device 800 which the user may use to interact with theheating device 806 (e.g., see FIGS. 9A-9K). The user devices 800 maydownload and execute the one or more programs in order to interact withthe heating device 806 (e.g., after the user purchases the heatingdevice).

In some implementations, the remote server 802 may store data that canbe accessed by the user devices 800. For example, the remote server 802can store heating profiles. In some implementations, the heatingprofiles may be created by the owner/operator of the remote server 802and uploaded to the remote server 802. In another example, the heatingprofiles may be created by one or more of the users and uploaded to theremote server 802. Users may download the heating profiles and load theheating profiles on their heating devices 806. Providing the heatingprofiles for download may help new and existing users convenientlyacquire and try new heating profiles.

A heating profile may also include associated data. The associated datamay include heating device information that indicates the type ofheating device and/or heating unit with which the heating profile may beused. In one example, the associated data may include heating deviceidentification numbers (e.g., model numbers) indicating the type ofheating device with which the heating profile is compatible. As anotherexample, the associated data may indicate that the heating profileshould be used with a certain device/unit having a certain configurationof heating elements and/or sensors.

In some implementations, the users can store user data on the remoteserver 802. Example user data may include the types of conditions forwhich the user uses the heating device 806 along with data indicatinghow effective various heating profiles are in alleviating the condition.For example, the user may upload a heating profile and additional dataalong with the heating profile indicating the condition for which theheating profile is used and how effective the heating profile is inalleviating the condition (e.g., a score from 1-10). The remote server802 can make recommendations to users based on uploaded user data. Forexample, the remote server 802 can recommend heating profiles to userswith a condition if the heating profiles are indicated as effective byother users for the same/similar conditions.

FIGS. 9A-9K illustrate example GUIs that can be displayed on the userdevices. Users may use the example GUIs to: 1) control the heatingdevice, 2) transfer data to the heating device, 3) retrieve data fromthe heating device, 4) transfer data to the remote server, 5) retrievedata from the remote server, and perform other operations, such ascreating and modifying heating profiles. In FIGS. 9A-9K, the userdevices 900-1, 900-2, 900-11 include a touchscreen that overlays theGUIs. A user can interact with the GUI by interacting with thetouchscreen display (e.g., touching/swiping the touchscreen display). Inother implementations, a user device may include additional user inputs,such as buttons, that the user may use to control the heating device100. The GUIs of FIGS. 9A-9K are only example GUIs used to illustratevarious example features of the user device, and as such, do notrepresent an exhaustive set of features that may be provided by the userdevice.

FIG. 9A illustrates a GUI that the user may use to control the heatingdevice 100 (e.g., in the manual mode). In FIG. 9A, the GUI controls aheating device 100 having two heating zones, where each heating zoneincludes one or more heating elements 204. The user can interact withtwo different GUI elements 902-1, 902-2 (e.g., sliders), each of whichcontrols heating to the different heating zones. For example, the usermay slide (e.g., swipe) the slider icons 902-1, 902-2 in the high/lowdirection to increase/decrease the amount of heating in the heatingzones. Although sliding GUI elements are illustrated, in otherimplementations, other GUI elements may be used to control heating, suchas graphical buttons (e.g., +/− buttons) or dials. Although GUI elementsfor incrementing/decrementing heat are illustrated in FIG. 9A, otherGUIs may include other controls, such as controls that control bothheating zones at the same time or controls that can be used to offsetthe timing of different heating zones (e.g., to create a wave of heat).

FIGS. 9B-9C illustrate GUIs that provide information to the user,provide controls for the user, and acquire feedback from the user. TheGUI in FIG. 9B indicates that the user device 900-2 is connected to aheating device 100. The GUI also gives the user various controls for theheating device 100. For example, the user can: 1) update the activeheating profile running on the heating device 100, 2) view the activeheating profile in real-time in another GUI, and 3) put the heatingdevice 100 to sleep. Additionally, the GUI prompts the user for feedbackindicating how effective the heating profile is for the user.

FIG. 9C illustrates a GUI that allows the user to select a new heatingprofile to run on the heating device 100 and/or modify a current heatingprofile. The user can select a new heating profile from other users(e.g., from the remote server 802), select a profile saved on the userdevice 900-3 or remote server 802, or select a random profile. The usercan also create a new profile. In some implementations, the heatingprofiles can be assigned names (e.g., by the user/creator) so that theuser can identify the heating profile.

Additionally, the user may use motion sensors or music to generate aprofile. In the case of generating profiles based on motion, the heatingdevice 100 may detect motion patterns from the motion sensor (such as awalking motion) and/or may respond to real-time changes in the user'smotion. For example, the heating device 100 may detect a regularperiodic frequency within the user's motion. In response to thisdetected frequency, the heating device 100 can deliver pulses of heat tocoincide with the user's motion. Further, in order to have the pulse ofheat arrive at the user's body in-phase with his/her periodic motion,the heating device may delay/offset the pulse of heat by a given amount(based on the thermodynamic properties of the device package). In thecase of generating profiles based on music, the user may choose an audiostream on the user device 900-3 (either downloaded onto the user device900-3 or streaming on the internet). The audio stream's contents can beprocessed (e.g., by an external computing device and/or the heatingdevice 100) to find underlying rhythms and frequency patterns, which canthen be converted to heat delivery profiles. For example, if an audiostream has a melody that rises and falls at a given rate, then a profilecan be created to match it. A benefit of using music as a seed forgenerating new profiles is that it allows for varied and diverseprofiles without the need for a high degree of user input. Anotherexample benefit of using music to generate profiles is that the user maylisten to the music while experiencing the music-generated profile, sothat the effect of the heating device 100 is combined with the effect ofhearing the music stream.

FIG. 9D illustrates a GUI that allows a user to create a custom heatingprofile. In the GUI, the user may draw a heating pattern (e.g., withtheir finger or stylus). The user may then save the heating pattern(i.e., heating profile) and upload the heating pattern to the heatingdevice 100. The user can retrieve and modify the saved heating patternat a later time.

FIGS. 9E-9F illustrate GUIs that allow a user to specify their desiresfor a heating profile, which may then be generated automatically by theuser devices 900-5, 900-6. In FIG. 9E, the user can adjust a slider leftor right to indicate that they would like maximum heat or maximumheating device operating time. In general, a greater amount of heat mayyield a shorter operating time when the heating device 100 is running ona battery. The GUI provides the user with the choice of whether toincrease heat or increase operating time. The heating device 100 mayadjust the amplitude of the current heating pattern according to theuser's selection and/or select another heating pattern based on theselected operating time and/or heating.

The GUI of FIG. 9F illustrates a graph with four quadrants and a pointthat the user may position within the quadrants to control the intensityof heat and whether the heating is steady or in pulses. The user maydrag the dot in the X direction to increase/decrease the amount of heatdelivered to the user. The user may drag the dot in the Y direction tomodify the rate of pulses delivered to the user. For example, draggingthe dot toward the pulses portion of the Y axis may cause an increase inpulse frequency, whereas dragging the dot toward the steady portion ofthe Y axis may cause the pulse frequency to decrease (e.g., steady=nopulses).

FIG. 9G illustrates a GUI that conveys heating device information to theuser, including: 1) the connection status between the user device 900-7and the heating device, 2) the battery status of the heating device, and3) the remaining operating time for the heating device at the currentsettings (e.g., the current heating profile). The GUI also illustrates athermal map of the heating device that indicates the heat in differentheating zones. Additionally, the GUI illustrates the heating profilerunning in zone 1 of the heating device. Over time, the illustratedheating profile may scroll from left to right as the heating deviceexecutes the heating profile. This allows the user to visualize thepast/present/future behavior of the heating profile. The user may pausethe heating device by pressing the “PAUSE HEAT” button in the GUI.

FIG. 9H illustrates a GUI that allows the user to select a desired usage(operation) time for the heating device 100. For example, the user mayslide the slider to the right/left to increase/decrease the usage time.The user device 900-8 and/or the heating device 100 may then update thecurrent heating profile or generate a new heating profile based on theselected usage time.

FIG. 9I illustrates a GUI that allows the user to control how long aheating profile is run, how long a heating profile is turned off, andthe strength of the heating profile. For example, the user may use aslider GUI element to set an on time that sets how long the heatingprofile should run. The user may also use a slider GUI element to set anoff time that sets how long the heating device 100 should cease heating(e.g., pause) after running for the on time. The heating device 100 maythen repeat the on/off behavior for the selected on/off times. The usercan use a slider GUI element to set the strength (e.g., the power)associated with the heating profile, where a greater strength mayincrease the power delivery for a given heating profile. The user device900-9 may then calculate the estimated usage time for the heating device100 according to the present battery level, the on/off times, and thestrength. The GUI displays the estimated usage time to the user (e.g., 3hours, 10 min). Modifying the on time and off time can extend/reduce thebattery life (i.e., the estimated usage time) of the heating device 100.

FIG. 9J illustrates a GUI that allows a user to tailor the motionresponse of the heating device 100. As described herein, the heatingdevice 100 can determine the motion of the user based on a motion sensorincluded in the heating device 100 and/or a motion sensor included inthe user device 900-10. The user may move the slider GUI element to theleft or right to adjust whether the heating device 100 provides moreheat while the user is stationary or moving.

FIG. 9K illustrates a GUI that acquires user information. The GUIprompts the user to describe their pain based on whether the user isstationary/moving. The GUI also prompts the user to describe their painin terms of whether it is consistent/steady or shooting. Additionally,the GUI prompts the user to indicate their source of pain. The userinformation acquired via the GUI may be stored on the user device 900-11and/or the remote server 802. At a later time, the user may indicatewhich heating profile(s) are most effective in comforting the paindescribed in the GUI. The effectiveness of one or more heating profileswith respect to the reduction/elimination of pain described in the GUImay be stored at the remote server 802 and/or user device 900-11 and beused to make recommendations to the user or other users, as describedherein.

The heating device 100 can include a device package that can house oneor more heating units 202, device electronics 300, and other components(e.g., a battery). The device package may include flexible portions thatconform to a user's body. FIGS. 1A-1C and 11A-15B illustrate differentexample heating devices having different packages.

FIGS. 1A-1C and FIGS. 10A-10D illustrate a first heating device 100-1.The first heating device package can include one or more heatingelements 204 arranged in any manner throughout the package. The firstheating device 100-1 can be applied to different parts of the user'sbody, such as the user's back (FIG. 1C). The first device package caninclude one or more belt loops 1002 that receive a belt 1004 used tohold the heating device 100-1 to a user's body. The belt 1004 isfastened together using a clasp 1005. With respect to FIG. 10A, thefirst heating device 100-1 can include a user input button 106 (e.g., anon/off button) and a power input port 104. In FIG. 10A, the firstheating device 100-1 may have approximate dimensions of 220 mm by 90 mm,with an approximate thickness of 5 mm. Note that the dimensions includedin the figures for the various heating devices 100 are only exampledimensions. Heating devices having other dimensions may be fabricated.

FIG. 10B illustrates an exploded view of the first heating device 100-1.The first heating device 100-1 includes an encapsulation 1006. Theencapsulation 1006 is formed from an encapsulation top cover 1006-1 andan encapsulation bottom cover 1006-2. The encapsulation 1006encapsulates components of the heating device 100-1, such as the heatingunit 202-11, battery 302, and device electronics (not illustrated inFIG. 10B). The top/bottom covers 1006 in FIG. 10B can be flexiblematerial that can be adhered together or connected in another manner,such as fused, vulcanized, ultrasonically welded, or thermally welded.In some implementations, the encapsulation 1006 may not entirely coverthe heating unit 202-11. In these implementations, the heating unit202-11, or other body contact layer (e.g., a thermally conductive layer)may contact the user (e.g., body or clothing). The encapsulation 1006may be formed from materials including, but not limited to, cloth-basedor fabric materials, molded flexible plastics/rubbers, foams, andsynthetic fleece material. In some implementations, the heating device100-1 may include material/structure that imparts some rigidity to theheating device 100-1. FIG. 10D illustrates an additional skin adhesivelayer 1008 that may be attached to the encapsulation bottom cover1006-2. A removable cover layer 1010 can be peeled from the adhesivelayer 1008 to expose the adhesive layer 1008.

The first heating device 100-1 includes an insulation layer 1012 (e.g.,an insulating foam) that may help increase the thermal efficiency of theheating device 100-1. The insulation layer 1012 may minimize heatflowing away from the body and away from the heating device 100-1. Theinsulation layer 1012 may include a thermally insulating material, suchas a closed cell foam. In some implementations, the insulation layer1012 may include material that reflects heat back toward the body. Theinsulation layer 1012 may also provide comfort to the user. For example,the insulation layer 1012 may include a material (e.g., a foam) that mayprovide a cushioning layer that conforms to the user's body and othercomponents of the heating device 100-1. The insulation layer 1012 mayrebound after conforming during use.

FIGS. 11A-11F illustrate a second example heating device 100-2. Theheating device 100-2 includes a heating unit 202-12. The heating unit202-12 includes a substrate and one or more heating elements (notillustrated) embedded within the substrate. For example, the heatingelements may be resistive heating elements embedded within a polymersubstrate. In a more specific example, the heating unit may be aflexible circuit board including resistive heating traces. The heatingelements of the heating device 100-2 may be arranged in any mannerdescribed herein.

The heating device 100-2 includes a removable battery housing 1100. Thebattery housing 1100 includes a battery (not shown). In someimplementations, the battery housing 1100 may also include deviceelectronics. Accordingly, the battery housing 1100 may also be referredto as a “battery and electronics housing 1100.” The user mayremove/replace the battery housing 1100. For example, the user mayreplace the battery housing 1100 with other battery housings includingfully charged batteries and/or batteries with different capacities. Insome implementations, the battery housing 1100 may have a differentgeometry than that illustrated in FIGS. 11A-11F. For example, a batteryhousing including a battery with a larger capacity may have a largervolume and/or different shape than that illustrated in FIGS. 11A-11F.

The battery housing 1100 mates with a receptacle 1102. In the example ofFIG. 11C, the battery housing 1100 defines indentations 1104 that matewith retention clips 1106 included on the receptacle 1102. The user canslide the battery housing 1100 into the receptacle 1102 along rails 1108defined by the receptacle. The battery housing 1100 is seated andretained in position by the mating between the retention clips 1106 andindentations 1104. When the battery housing 1100 is seated in thereceptacle 1102, the user can apply a force to the battery housing 1100to unseat the battery housing 1100 from the receptacle 1102. Forexample, the user can apply a force to the battery housing 1100 thatcauses the indentations 1104 to spread the retention clips 1106 and thencauses the battery housing 1100 to slide out of the receptacle 1102along the rails 1108. The illustrated battery housing 1100 andreceptacle 1102 are only one example retention mechanism for a removablebattery housing. The battery housing may be attached and retained byother retention mechanisms, such as an electrical connector (e.g.,friction between electrical contacts), a magnetic latch, a push/pushmechanism (e.g., such as on a ballpoint pen), and/or a mechanicalhook/latch (e.g., a user actuated connector).

The heating device 100-2 includes an insulating foam padding 1110. Theinsulating foam 1110 may be formed from a flexible insulating material,such as a closed cell foam. The insulating foam 1110 is attached to theheating unit 202-12 on the side of the heating unit 202-12 facing awayfrom the user's body during use. The insulating foam 1110 may increasethe thermal efficiency of the heating device 100-2 by minimizing heatflowing away from the body. The insulating foam 1110 may also providecomfort to the user during use. For example, the insulating foam 1110may even out the pressure against the user if the heating device 100-2is sandwiched between the user and an object (e.g., a chair back).Specifically, in FIG. 11A, the insulating foam 1110 can help distributepressure along the entire heating unit 202-12, which may otherwise befocused under the battery housing 1100 and receptacle 1102.

The heating device 100-2 includes multiple flexible and rigid PCBs. Withrespect to FIG. 11D and FIG. 11F, the battery housing 1100 includes afirst rigid PCB 1112 and a first flexible PCB 1114 that are connected toone another. The first rigid PCB 1112 includes a power input port 104and a battery indicator 1116. The battery indicator 1116 may indicate avariety of statuses associated with the battery, such as the chargelevel of the battery and whether the battery is being charged. The firstflexible PCB 1114 includes electrical traces that connect the battery tothe electronics included on the first rigid PCB 1112. The first flexiblePCB 1114 also includes electrical traces that connect to the electricalcontacts on the second flexible PCB 1118 (e.g., FIG. 11D). The firstrigid PCB 1112, the first flexible PCB 1114, and/or the battery may alsoinclude circuits similar to those included in the power module 408 ofFIG. 4 .

The heating device 100-2 includes a second rigid PCB 1120 and a secondflexible PCB 1118 that are connected to one another. The second rigidPCB 1120 includes device electronics described herein, such aselectronics included in the communication module 404, processing module402, memory 420, temperature sensing module 412, heating control module410, and interface module 406. The LED on the heating device 1122 mayindicate if the heating device 100-2 is turned on, if it is connected toa user device 102 (e.g., via Bluetooth), if it is heating, and/or thestate of the battery.

The second flexible PCB 1118 can be attached to the heating unit 202-12in a variety of ways. For example, the second flexible PCB 1118 can bebonded to the heating unit 202-12 using adhesive bonding, heat welding,ultrasonic welding, mechanical attachments, or other technique. Thesecond flexible PCB 1118 includes temperature sensors 1124 that extendthrough openings 1126 defined in the heating unit 202-12. Thetemperature sensors 1126 are positioned between the heating unit 202-12and the user during use. The second flexible PCB 1118 also includeselectrical contacts 1128 that solder to the heating elements included inthe heating unit 202-12.

The second flexible PCB 1118 includes electrical contacts 1130 (e.g., 6illustrated contacts) that electrically couple the battery andelectronics included in the battery housing 1100 to the deviceelectronics included on the second flexible PCB 1118 and the secondrigid PCB 1120. For example, the contacts 1130 may deliver power fromthe battery to the second flexible PCB 1118 and the second rigid PCB1120. The electrical contacts 1130 may also provide for communicationbetween components included in the battery housing 1100 and componentson the receptacle side of the heating device 100-2. For example, thecontacts 1130 may allow electronics on the second rigid PCB 1120 todetermine the battery serial number/ID, the battery size, the state ofcharge, the battery temperature, the battery usage time, and other data.

The arrangement of PCBs and device electronics described with respect toFIGS. 11A-11F is only one example arrangement of PCBs and deviceelectronics. In other examples, the heating device 100-2 may includeother arrangements of PCBs and device electronics. For example, theheating device 100-2 may include other arrangements of flexible and/orrigid PCBs. As another example, the battery housing 1100 may includeadditional device electronics, such as device electronics included inthe communication module 404, processing module 402, memory 420,temperature sensing module 412, heating control module 410, andinterface module 406.

Note that the heating device 100-2 does not include a manual user inputbutton. For example, the heating device 100-2 does not include an on/offbutton for turning the heating device 100-2 on/off. Instead ofcontrolling the heating device 100-2 using manual buttons included onthe heating device 100-2, the user may control the heating device 100-2via the user device 102. For example, the user may interact with a GUIon the user device 102 to turn the heating device 100-2 on/off or placethe heating device in a standby/sleep mode.

FIGS. 12A-12C illustrate a third heating device 100-3. The third heatingdevice package can include one or more heating elements 204 arranged inany manner throughout the package. The third heating device 100-3 can beapplied to different parts of the user's body, such as the user's back(FIG. 12C). The third device package can include one or more connectors1200 (device connectors) that are configured to connect to a belt loop1202 having connectors 1204 (belt connectors) that mate with the deviceconnectors 1200 of the third device package (see FIG. 12B). With respectto FIG. 12A, the third heating device 100-3 can include a user inputbutton 106 (e.g., an on/off button) and a power input port 104. Thethird heating device 100-3 may have approximate dimensions of 220 mm by90 mm, with a thickness of approximately 5 mm.

The third heating device 100-3 of FIGS. 12A-12C may include similarlayers as the first heating device 100-1, such as the encapsulationlayers, heating unit, and insulation layer. The arrangement of thecomponents within the third heating device 100-3 may be different thanthe arrangement of components within the first heating device 100-1. Forexample, the battery, user input button, and power input port of thethird heating device 100-3 may be offset to one side, whereas thesecomponents are centrally located in the first heating device 100-1. Insome implementations, the third heating device 100-3 may also include anadhesive layer (not illustrated) that may be attached to theencapsulation bottom cover.

FIGS. 13A-13D illustrate a fourth heating device 100-4. The fourthheating device package can include one or more heating elements 204arranged in any manner throughout the package. The fourth heating device100-4 can be applied to different parts of the user's body (e.g., seeFIG. 13D). The fourth device package can include one or more belt loops1300 for receiving a belt 1301. The belt loops 1300 of the fourth devicepackage, which are located at the edges of the fourth device package,may be integrated with the encapsulation top cover 1302. The fourthheating device 100-4 can include a user input button 106 (e.g., anon/off button) and a power input port. In FIG. 13B, the fourth heatingdevice 100-4 may have approximate dimensions of 220 mm by 90 mm, with athickness of approximately 10 mm.

Referring to FIG. 13C, the fourth heating device 100-4 may includesimilar layers as the first heating device 100-1, such as theencapsulation layers 1302, 1304 and the heating unit 202-13. The fourthheating device 100-4 also includes a shape retention element 1306 (e.g.,a moldable wire or plastically deformable material) that the user canuse to form the fourth heating device 100-4 into a shape that ismaintained by the shape retention element 1306. The shape retentionelement 1306 may be used to shape and fix the fourth heating device100-4 to the user's body (e.g., around the shoulder in FIG. 13D, waist,arm, hand, leg, foot, neck, or head). For example, the shape retentionelement 1306 (e.g., the wire) may be pressed to conform to the user'sbody and maintain its shape so that the heating device 100-4 conforms tothe user's body when the user removes their hand from the heating device100-4. Since the belt loops 1300 are integrated into the perimeter ofthe fourth heating device 100-4, the belt loops 1300 may also conform towhatever shape the fourth heating device 100-4 takes. Although the shaperetention element 1306 is included around the perimeter of the fourthheating device 100-4, a heating device may include shape retentionelements along one or more axes of the heating device.

FIGS. 14A-14C illustrate a fifth heating device 100-5 having a fifthdevice package. The fifth device package separates different componentsinto different pods 1400. The pods 1400 may include differentcomponents. In some examples, one or more pods 1400 may include thebattery and device electronics. In these examples, the remaining podsmay include heating units. In some implementations, the heating unitsmay be distributed throughout the full surface of the heating device100-5 or beneath some or all of the pods 1400. The fifth heating device100-5 may include similar layers as the other heating devices, such asencapsulation layers, heating units, and an adhesive layer. Separationof the components into different pods 1400 may allow the heating device100-5 to easily fold/roll in one direction. The flexibility of the fifthheating device 100-5 may help it conform to the user's body (e.g., auser's shoulder) as illustrated in FIG. 14C.

FIG. 15 illustrates a sixth heating device 100-6 having a sixth devicepackage. The sixth heating device 100-6 is shaped to conform to afemale's pelvic region. The sixth heating device 100-6 may includesimilar layers and components as the other heating devices, such as userinput buttons, device electronics, a battery, encapsulation layers,heating units, and an adhesive layer. The sixth heating device 100-6 maybe flexible so that it conforms to the user's body. In someimplementations, the sixth heating device 100-6 (or any other heatingdevice) may be made from water repellant materials.

FIGS. 16A-16E illustrate various sleeves and garments that may beconfigured to hold the heating devices 100 described herein. FIG. 16Aillustrates an example sleeve 1600 that holds the sixth heating device100-6. The sleeve 1600 of FIG. 16A may be fabricated from a clothmaterial (e.g., cotton or other fabric). In some implementations, thesleeve 1600 may be fabricated from a material that spreads heat. In someimplementations, the sleeve 1600 may be fabricated from a breathablematerial. FIG. 16B illustrates another sleeve 1602. The sleeve 1602 ofFIG. 16B is a weighted sleeve configured to hold the first heatingdevice 100-1. The weighted sleeve 1602 may apply pressure to the heatingdevice 100-1 during use (e.g., while resting on the user).

FIGS. 16C-16E illustrate garments that are configured to hold theheating devices 100. FIG. 16C is a female underwear garment 1606including a device pouch 1604 that is shaped to hold the sixth heatingdevice 100-6 in the pelvic region. FIG. 16D is another underwear garment1608 including a device pouch 1610 for holding a heating device.Specifically, the garment 1608 of FIG. 16D includes a device pouch 1610that holds the first heating device 100-1 above the pubic region. FIG.16E illustrates an additional example underwear garment 1612 for a womanthat includes a device pouch 1614 for holding the first heating device100-1 in the user's lower back.

Various examples have been described. These and other examples arewithin the scope of the following claims.

What is claimed is:
 1. A heating device comprising: a first heatingelement configured to deliver heat to a first portion of a user's body;a second heating element configured to deliver heat to a second portionof the user's body; one or more substrates that support the first andsecond heating elements; device electronics coupled to the first andsecond heating elements, the device electronics configured to deliverpower to the first heating element and the second heating element tocause the first heating element and the second heating element to heatthe first portion and the second portion of the user's body,respectively; and a device package comprising: one or more userinterface devices; the first and second heating elements; the one ormore substrates; the device electronics; a battery that provides powerto the device electronics, wherein the device electronics and thebattery are centrally located between the first and second heatingelements; and a belt configured to wrap around the user's body.
 2. Theheating device of claim 1, wherein the one or more user interfacedevices include one or more user input devices configured to receiveuser input, and wherein the device electronics are configured to modifythe delivery of power to the first and second heating elements inresponse to the user input received by the one or more user inputdevices.
 3. The heating device of claim 2, wherein the one or more userinput devices include one or more user input buttons.
 4. The heatingdevice of claim 2, wherein the one or more user input devices includeone or more switches.
 5. The heating device of claim 2, wherein the oneor more user input devices include one or more touch sensitive controls.6. The heating device of claim 2, wherein the one or more user inputdevices include one or more sensors configured to receive user input. 7.The heating device of claim 6, wherein the one or more sensors includeone or more capacitive touch sensors.
 8. The heating device of claim 6,wherein the one or more sensors include at least one of a force sensorand a pressure sensor.
 9. The heating device of claim 1, wherein the oneor more user interface devices include one or more displays thatindicate an amount of heat provided by the first and second heatingelements.
 10. The heating device of claim 1, wherein the one or moreuser interface devices include one or more touchscreen displays.
 11. Aheating device comprising: a first heating element configured to deliverheat to a first portion of a user's body; a second heating elementconfigured to deliver heat to a second portion of the user's body; oneor more substrates that support the first and second heating elements;device electronics coupled to the first and second heating elements, thedevice electronics configured to: receive a heating profile from anexternal computing device, wherein the heating profile includes dataindicating how power should be delivered to the first and second heatingelements over a period of time; and power the first and second heatingelements according to the heating profile; and a device packagecomprising: one or more user interface devices; the first and secondheating elements; the one or more substrates; the device electronics; abattery that provides power to the device electronics, wherein thedevice electronics and the battery are centrally located between thefirst and second heating elements; and a belt configured to wrap aroundthe user's body.
 12. The heating device of claim 11, wherein the one ormore user interface devices include one or more user input devicesconfigured to receive user input, and wherein the device electronics areconfigured to modify the delivery of power to the first and secondheating elements in response to the user input received by the one ormore user input devices.
 13. The heating device of claim 12, wherein theone or more user input devices include one or more user input buttons.14. The heating device of claim 12, wherein the one or more user inputdevices include one or more switches.
 15. The heating device of claim12, wherein the one or more user input devices include one or more touchsensitive controls.
 16. The heating device of claim 12, wherein the oneor more user input devices include one or more sensors configured toreceive user input.
 17. The heating device of claim 16, wherein the oneor more sensors include one or more capacitive touch sensors.
 18. Theheating device of claim 16, wherein the one or more sensors include atleast one of a force sensor and a pressure sensor.
 19. The heatingdevice of claim 11, wherein the one or more user interface devicesinclude one or more displays that indicate an amount of heat provided bythe first and second heating elements.
 20. The heating device of claim11, wherein the one or more user interface devices include one or moretouchscreen displays.